There are many different types of data networks, of which Ethernet is perhaps the best known. Some data networks, such as HPNA (Home Phoneline Network Alliance) v.3, HomePlug AV and G.hn networks, have resource reservation schemes. Resource reservation networks have a scheduler to guarantee media resources to network nodes, to prevent collision between multiple network nodes using the same line and to ensure quality of service.
An exemplary resource reservation network is shown in FIG. 1A and an exemplary schedule is shown in FIG. 1B, to which reference is now made. Four network nodes 5 are shown, one of which, the domain master, has a scheduler 6. Each network node 5 is connected to a computing device of some kind, which computing device has at least one software application, labeled 8, running at any time. Software applications 8 generate data, in the form of application protocol data units (APDUs) or data packets, which are to be transmitted along a network medium 7. Each computing device may be running multiple applications 8, each of which may generate a “service flow” through the associated network node 5.
Scheduler 6 receives bandwidth allocation requests from nodes 5 and then creates and sends to each network node 5 a media access plan (MAP) for each media access (MAC) cycle 10 (FIG. 1B). Each MAP is a detailed schedule of future transmission opportunities (TXOPs) that will be made available to all network nodes in the upcoming MAC cycle described by the MAP and allocates each opportunity to a particular service flow. The MAP details the start time and length of each and all scheduled TXOPs in the next cycle of transmissions, and assigns each TXOP to a particular network node.
Within data networks, there are generally three types of services, variable bit-rate (VBR) services, best effort (BE) services and constant data services. For VBR services, such as a video stream, the amount of data to be transferred varies from transmission to transmission. Best effort services are transmitted during contention periods (CPs) during which the services to be transmitted contend for access to the network. Thus, only those that access the network get transmitted and their level of service is not guaranteed. The data is typically transmitted with a variable number of bits per cycle.
For constant data services, there is a constant amount of data being transferred at any given time with a fixed, known interval between packets. Exemplary constant data services are digital telephony transmissions, such as voice over IP (VoIP) which may generate APDUs, of a fixed size and may transmit the APDUs at fixed intervals. Scheduler 6 can easily schedule such a fixed interval activity, since the same amount of bandwidth is required for each transmission.
FIG. 1B illustrates the scheduling over a plurality of MAC cycles 10 for an exemplary fixed bit rate service. FIG. 1B shows a plurality of contention free transmission opportunities (CFTXOPs) 12 occurring at a regular rate. Accordingly, there is a fixed period of time T between any pair of CFTXOPs 12. As can be seen in FIG. 1B, fixed period of time T is maintained irrespective of where within each MAC cycle each CFTXOP 12 falls.